home *** CD-ROM | disk | FTP | other *** search
/ Directorty Opus 5 - Magellan / Opus 5 - Magellan.iso / DOpus_Install / ARexx / Storage / Modules / DOpusFuncs_Link.dopus5 < prev    next >
Text File  |  1996-07-17  |  2KB  |  58 lines

  1. /* DOpusFuncs_Link for Directory Opus 5.5
  2.    by Leo 'Nudel' Davidson for Gods'Gift Utilities
  3.    email: leo.davidson@keble.oxford.ac.uk  www: http://users.ox.ac.uk/~kebl0364
  4.  
  5. $VER: DOpusFuncs_Link 1.3 (8.6.96)
  6.  
  7.    Adds the extra functions in the DOpusFuncs utility as internal Opus 5
  8.    commands. Note that it's (slightly) quicker to run DOpusFuncs the old,
  9.    direct way, but this method is nicer.
  10.  
  11.    Eventually, DOpusFuncs will be turned into a propper module, anyway
  12.    (I hope). This script made more for fun than anything else... (Given
  13.    that this script has to be called for all functions, it would probably
  14.    be faster to impliment everything in here as ARexx ;-) ).
  15.  
  16.    This program must go in the DOpus5:Modules directory. The DOpusFuncs
  17.    executable must be in the command-path (or resident). DOpus5:c/ should
  18.    be in the command-path so you can leave it in there.
  19.  
  20.    DOpusFunc's ClipEntry command is not supported for obvious reasons (if you
  21.    read the docs) -- you still have to use that as before.
  22.  
  23.    The NewPos/K argument is not currently supported because if would require
  24.    a little work and is hardly worth it IMO, for now at least.
  25. */
  26.  
  27. options results
  28. options failat 99
  29. parse arg portname function source dest arguments
  30. address value portname
  31.  
  32. /* No version check as pre 5.5 doesn't support these scripts at all. */
  33.  
  34. Select
  35.     When function='init' then do
  36.         dopus command "ScanParent" program "DOpusFuncs_Link" desc "'Read parent directory to lister'" template "NEW/S"
  37.         dopus command "WinCopy"    program "DOpusFuncs_Link" desc "'Clone a lister'"                  template "NEW/S"
  38.         dopus command "WinSwap"    program "DOpusFuncs_Link" desc "'Swap two listers'"                template "PATH/S"
  39.         dopus command "LCloseAll"  program "DOpusFuncs_Link" desc "'Close all listers'"
  40.         dopus command "LIconAll"   program "DOpusFuncs_Link" desc "'Iconify all listers'"
  41.         end
  42.     When function='ScanParent' then
  43.         address command "DOpusFuncs" portname "ScanParent" arguments
  44.     When function='WinCopy' then
  45.         address command "DOpusFuncs" portname "WinCopy" arguments
  46.     When function='WinSwap' then do
  47.         If Find(Upper(arguments),"PATH") == 0 Then
  48.         address command "DOpusFuncs" portname "WinSwap"
  49.         else
  50.         address command "DOpusFuncs" portname "PathSwap"
  51.         end
  52.     When function='LCloseAll' then      /* These should certainly be "inline" :) */
  53.         lister close all
  54.     When function='LIconAll' then
  55.         lister iconify all
  56. Otherwise
  57.     End
  58.